package com.tedu.api.thread;

/**
 * 包：java.lang
 * 什么是线程？
 * Thread线程类是程序执行的最小单位，是程序中运行的一个执行路径
 * 线程允许程序同时执行的最小单位，从而提高效率和响应性
 *
 * 1.线程的基本API
 */
public class Thread_info {
    public static void main(String[] args) {
        //主方法---主线程---获取主线程
        //Thread类下静态方法 返回值：Thread
        //currentThread() 获取当前正在执行线程对象
        Thread main=Thread.currentThread();
        System.out.println("获取线程对象是："+main);

        //getName()  返回值字符串
        //获取线程名称---线程名字--打印线程名字，没有名字：Thread--0 ..
        String name=main.getName();
        System.out.println("打印主线程名称是："+name);

        //getId()b返回值long
        //获取线程的唯一标识【程序中出现大量线程，每个线程都有唯一身份证号】
        long id=main.getId();
        System.out.println("打印主线程的ID："+id);

        //priority() 返回值int
        //获取线程的优先级，线程优先级：1~10，默认优先级：5
        //线程优先级越高---优先执行几率越大
        int priority=main.getPriority();
        System.out.println("线程优先级："+priority);

        //isAlive 返回值boolean
        //判断线程是否活动状态【线程是活：true 死：false】
        boolean b=main.isAlive();
        System.out.println("主线程是否活动状态"+b);

        //isDaemon 返回值boolean
        //判断当前线程是否是守护线程 true/false
        boolean b1=main.isDaemon();
        System.out.println("主线程是不是守护线程"+b1);

        //isInterrupted() 返回值boolean true曾经死过
        //判断当前线程是否死过
        boolean b3=main.isInterrupted();
        System.out.println("主线程是否死过："+b3);
    }
}
